/// \file IWinWindow.h
/// \date 2012-12-05
/// \brief interface for Windows' window classes

#ifndef _SNAKE_RENDER_IWINWINDOW_H__
#define _SNAKE_RENDER_IWINWINDOW_H__
#include <windows.h>

namespace Render
{

/// \brief interface for Windows' window classes
class IWinWindow
{
public:
	// ========== LIFECYCLE ========== //
    IWinWindow(void);
    virtual ~IWinWindow(void);

    // ========== OVERLODED OPERATORS ========== //

    // ========== METHODS ========== //

    virtual void close() = 0;

    // ========== GETTERS ========== //
    virtual HWND getHWND() = 0;
    unsigned int getWidth();
    unsigned int getHeight();
    // ========== SETTERS ========== //

    // ========== INQUIRY ========== //
};
};
#endif // _SNAKE_RENDER_IWINWINDOW_H__
